#############################
# ~ .gitignore ~ for Chris Jones dotfiles
# url: https://github.com/ipatch/dotfiles
# github: @ipatch
# twitter: @truckmonth
##

#############################
# Ignore files for Vim & Neovim
##
[._]*.s[a-v][a-z]
[._]*.sw[a-p]
[._]s[a-v][a-z]
[._]sw[a-p]
vim/*.swp
**/.swp   # ignore all and any `.swp` files within this repo
**/.tmp.*
**/.tmp.a
**/.undo
**/.un*
**/*.un~

# Ignore bundled packages, ie. minpac Vim plugins
!/editors/vim/vim/pack/.gitkeep
!/editors/vim/vim/pack/minpac/.gitkeep
editors/vim/vim/pack/minpac/opt/*
!/editors/vim/vim/pack/minpac/opt/.gitkeep
editors/vim/vim/pack/minpac/start/*
!/editors/vim/vim/pack/minpac/start/.gitkeep

# Ignore `.netrwhist` netrw - file explorer histories, Vim & Neovim
editors/vim/vim/.netrwhist
config/nvim/.netrwhist

# NOTE: legacy for vim-plug
editors/vim/vim/bundle/*

# Vim & Neovim tmp files & dirs
!/editors/vim/vim/tmp/.gitkeep

editors/vim/vim/tmp/backup/*
!/editors/vim/vim/tmp/backup/.gitkeep

# Ignore session files for Vim & Neovim
editors/vim/vim/tmp/sessions/*
!/editors/vim/vim/tmp/sessions/.gitkeep

editors/vim/vim/tmp/swap/*
!/editors/vim/vim/tmp/swap/.gitkeep

editors/vim/vim/tmp/undo/*
!/editors/vim/vim/tmp/undo/.gitkeep

# Ignore view files generated by Vim & Neovim
editors/vim/vim/tmp/views/*
!/editors/vim/vim/tmp/views/.gitkeep

editors/vim/vim/tmp/viminfo

# Neovim - python related files for neovim-remote
jobs/bin/easy_install
jobs/bin/easy_install-3.6
jobs/bin/easy_install-2.7
jobs/bin/nvr

##############################
# tags -- universal-ctags
##
# Ignore `tags` file generated by `ctags` / `homebrew-universal-ctags`
**/tags
tags
*tags
!/editors/ctags

# Ignore vscode project files
**/.vscode

# Ignore those pesky macOS .DS_Store files recursively throughout repo
**/.DS_Store

**/*.bkup

# track all files with a name of `.gitkeep`
!*.gitkeep

##############################
# weechat
##
# Ignore all files with extension `weechatlog` recurisvely in all directories
**/.weechatlog
config/irc-clients/weechat/weechat.log
config/irc-clients/weechat/logs/*
config/irc-clients/weechat/logs/*.weechatlog
!/config/irc-clients/weechat/logs/.gitkeep
config/irc-clients/weechat/xfer/*
!/config/irc-clients/weechat/xfer/.gitkeep
#
config/irc-clients/weechat/localhost/**
#
config/irc-clients/weechat/irc.conf
config/irc-clients/weechat/weechat.conf
config/irc-clients/weechat/sec.conf
config/irc-clients/weechat/plugins.conf

##############################
# Fish shell
##
# Ignore fishd.<hash-files>
config/fish/fishd.*
# `fish_variables` > fish shell's new `fishd.*` uni vars file
config/fish/fish_variables
**/fish_history
**/fish_read_history
**/generated_completions/
config/fish/fisher/completions/*
!config/fish/fisher/completions/.gitkeep
config/fish/fisher/conf.d/*
!config/fish/fisher/conf.d/.gitkeep
config/fish/fisher/functions/*
!config/fish/fisher/functions/.gitkeep

##############################
# mpv
##
# Ignore all files within the watch_later dir for mpv
# **/config/mpv/watch_later/ 
# Ignore `watch_later` directory from mpv
config/mpv/watch_later/* 
!config/mpv/watch_later/.gitkeep
config/mpv/mpv_history.log

##############################
# GIMP
##
config/GIMP/2.10/themes/*
!config/GIMP/2.10/.gitkeep

##############################
# INKSCAPE
##
config/inkscape/extension-errors.log
# changes to frequently
config/inkscape/preferences.xml
jobs/bin/inkscape
jobs/bin/inkview

##############################
# FreeCad
##
**/FreeCAD/cookies
**/FreeCAD/webdata/**
**/FreeCAD/webdatacache/**
**/FreeCAD/webdatapersistent/**
# the below file was updating too often
**/FreeCAD/user.cfg
##
**/FreeCAD/AddonManager/**
**/FreeCAD/Mod/**
!**/FreeCAD/Gui/Stylesheets/README.md
**/FreeCAD/Gui/Stylesheets/*.qss
**/FreeCAD/Gui/Stylesheets/*.orig
**/FreeCAD/Macro/**
!**/FreeCAD/Macro/.gitkeep


##############################
# PrusaSlicer / Prusa Slicer
# NOTE: app setting files on macos are located within...
# $HOME/Library/Application Support/PrusaSlicer/
##

**/PrusaSlicer/cache/**
**/PrusaSlicer/snapshots/**
**/PrusaSlicer/vendor/**
**/PrusaSlicer/sla_material/**
**/PrusaSlicer/sla_print/**
**/PrusaSlicer/PrusaSlicer.ini
**/PrusaSlicer/print/cr10pro.prusa.mod.full.3top3btm.ini
# below file(s) is being updated too often for my liking
**/PrusaSlicer/PrusaSlicer.ini
**/PrusaSlicer/filament/**
**/PrusaSlicer/print/**
**/PrusaSlicer/printer/**

##############################
# GTK > gtk-mac-bundler
##
jobs/bin/gtk-mac-bundler

##############################
# Blender
##
config/Blender/2.79/config/recent-files.txt
config/Blender/2.8[0-9]*/config/recent-files.txt
config/Blender/2.8[0-9]*/config/bookmarks.txt
config/Blender/2.8[0-9]*/scripts/addons/**
!config/Blender/2.8[0-9]*/scripts/addons/.gitkeep
config/Blender/2.8[0-9]*/scripts/presets/operator/**
!config/Blender/2.8[0-9]*/scripts/presets/operator/.gitkeep
!config/Blender/2.8[0-9]*/config/.gitkeep
# Blender 2.9x config files
config/Blender/2.9[0-9]*/config/recent-files.txt
config/Blender/2.9[0-9]*/config/bookmarks.txt
config/Blender/2.9[0-9]*/scripts/addons/**
!config/Blender/2.9[0-9]*/scripts/addons/.gitkeep
config/Blender/2.9[0-9]*/scripts/presets/operator/**
!config/Blender/2.9[0-9]*/scripts/presets/operator/.gitkeep
!config/Blender/2.9[0-9]*/config/.gitkeep
config/Blender/2.9[0-9]*/config/userpref.blend 
config/Blender/2.9[0-9]*/config/platform_support.txt

##################################
# Python - pyenv
##
lang/python/pyenv/**

# airpy tools for working with AirPort devices
jobs/bin/acp
jobs/bin/f2py
jobs/bin/f2py3
jobs/bin/f2py3.8
# python compile cache
**__pycache__

##############################
# r2 a.k.a radare radare2
##
config/radare2/history
config/radare2/plugins/*
!config/radare2/plugins/.gitkeep
config/radare2/r2pm/*
!config/radare2/r2pm/.gitkeep

##############################
# tmux
##
terms/tmux/tmux/resurrect/*
!terms/tmux/tmux/resurrect/.gitkeep
terms/tmux/tmux/resurrect/last
terms/tmux/tmux/plugins/*
!terms/tmux/tmux/plugins/.gitkeep

##############################
# crypto
##
config/asciinema/install-id

##############################
# build artifacts
##
**/*.o

##############################
# build artifacts > jhbuild
##
jobs/bin/jhbuild

##############################
# macOS > automation > karabiner & hammerspoon
config/karabiner/automatic_backups/*
jobs/macOS/Users/mr-fancy/hammerspoon/.cli.history

##############################
# tmp - ignore files
##
# config/git/gitconfig
.gitsecret/keys/random_seed
!*.secret
config/fish/interactive/private-env-vars.fish
jobs/macOS/Users/mr-fancy/Library/Preferences/FreeCAD/user.cfg
.git/**
